package com.joysuch.wwyt.api.basedata.service;

import com.joysuch.wwyt.bp.entity.BpDepart;
import com.joysuch.wwyt.dzhapi.dto.BuildDataDto;

import java.util.Map;

public interface BpDepartSyncService {
    boolean addSync(BpDepart entity, BpDepart parent);

    boolean addApiSync(BpDepart entity, BpDepart parent, BuildDataDto dto);

    boolean updateSync(BpDepart entity, BpDepart parent);

    boolean updateApiSync(BpDepart entity, BpDepart parent, BuildDataDto dto);

    boolean deleteSync(String uniqueId);

    boolean deleteApiSync(String uniqueId, BuildDataDto dto);

    Map<String, String> syncV2ListName();

    boolean syncDepart(BpDepart depart, BpDepart pDepart);

    boolean syncApiDepart(BpDepart depart, BpDepart pDepart, BuildDataDto dto);

    boolean getSyncDepart(BpDepart depart);

    boolean getApiSyncDepart(BpDepart depart, BuildDataDto dto);

    boolean getSyncCompany(Long tenentId, String orgCode);

    boolean syncDepartCross(BpDepart departEntity, BpDepart fatherDepart, String buildId);
}
